import cv2
import numpy as np


def mathc_img(image, Target, value):
    img_rgb = cv2.imread(image)
    img_gray = cv2.cvtColor(img_rgb, cv2.COLOR_BGR2GRAY)
    template = cv2.imread(Target, 0)
    w, h = template.shape[::-1]
    res = cv2.matchTemplate(img_gray, template, cv2.TM_CCOEFF_NORMED)
    # 置信度
    threshold = value
    loc = np.where(res >= threshold)
    for pt in zip(*loc[::-1]):
        cv2.rectangle(img_rgb, pt, (pt[0] + w, pt[1] + h), (7, 249, 151), 2)
    cv2.imshow('Detected', img_rgb)
    cv2.waitKey(0)
    cv2.destroyAllWindows()
    # 直接写文件看结果
    cv2.imwrite('yehaibowow.jpg',img_rgb)


if __name__ == "__main__":
    imageFull = ("full_back_eyes.jpg")
    Target = ('green_eys_top_right.jpg')
    value = 0.7
    mathc_img(imageFull, Target, value)
